option( WITH_PROVIDERS "Build with providers list" ON )
option( ENFORCE_VIRTUAL_FILES_SYNC_FOLDER "Enforce use of virtual files sync folder when available" OFF )
+option( DISABLE_VIRTUAL_FILES_SYNC_FOLDER "Disable use of virtual files sync folder even when available" OFF )
option(ENFORCE_SINGLE_ACCOUNT "Enforce use of a single account in desktop client" OFF)
#define APPLICATION_DOTVIRTUALFILE_SUFFIX "." APPLICATION_VIRTUALFILE_SUFFIX
#define APPLICATION_URI_HANDLER_SCHEME "@APPLICATION_URI_HANDLER_SCHEME@"
#cmakedefine01 ENFORCE_VIRTUAL_FILES_SYNC_FOLDER
+#cmakedefine01 DISABLE_VIRTUAL_FILES_SYNC_FOLDER
#cmakedefine DO_NOT_USE_PROXY "@DO_NOT_USE_PROXY@"
#cmakedefine ENFORCE_SINGLE_ACCOUNT "@ENFORCE_SINGLE_ACCOUNT@"
#cmakedefine01 APPLICATION_DISPLAY_LEGACY_IMPORT_DIALOG
}
if (const auto mode = bestAvailableVfsMode();
- Theme::instance()->showVirtualFilesOption()
- && !folder->virtualFilesEnabled() && Vfs::checkAvailability(folder->path(), mode)) {
+ !Theme::instance()->disableVirtualFilesSyncFolder() &&
+ Theme::instance()->showVirtualFilesOption() && !folder->virtualFilesEnabled() && Vfs::checkAvailability(folder->path(), mode)) {
if (mode == Vfs::WindowsCfApi || ConfigFile().showExperimentalOptions()) {
ac = menu->addAction(tr("Enable virtual file support %1 …").arg(mode == Vfs::WindowsCfApi ? QString() : tr("(experimental)")));
// TODO: remove when UX decision is made
bool FolderMan::isSwitchToVfsNeeded(const FolderDefinition &folderDefinition) const
{
auto result = false;
- if (ENFORCE_VIRTUAL_FILES_SYNC_FOLDER &&
+ if (!DISABLE_VIRTUAL_FILES_SYNC_FOLDER &&
+ ENFORCE_VIRTUAL_FILES_SYNC_FOLDER &&
folderDefinition.virtualFilesMode != bestAvailableVfsMode() &&
folderDefinition.virtualFilesMode == Vfs::Off &&
OCC::Theme::instance()->showVirtualFilesOption()) {
_selectiveSync = new SelectiveSyncWidget(account, this);
layout->addWidget(_selectiveSync);
- if (Theme::instance()->showVirtualFilesOption() && bestAvailableVfsMode() != Vfs::Off) {
+ if (!Theme::instance()->disableVirtualFilesSyncFolder() && Theme::instance()->showVirtualFilesOption() && bestAvailableVfsMode() != Vfs::Off) {
_virtualFilesCheckBox = new QCheckBox(tr("Use virtual files instead of downloading content immediately %1").arg(bestAvailableVfsMode() == Vfs::WindowsCfApi ? QString() : tr("(experimental)")));
connect(_virtualFilesCheckBox, &QCheckBox::clicked, this, &FolderWizardSelectiveSync::virtualFilesCheckboxClicked);
connect(_virtualFilesCheckBox, &QCheckBox::checkStateChanged, this, [this](int state) {
{
WizardCommon::initErrorLabel(_ui.errorLabel);
- if (!Theme::instance()->showVirtualFilesOption()
+ if (Theme::instance()->disableVirtualFilesSyncFolder() || !Theme::instance()->showVirtualFilesOption()
#ifndef BUILD_FILE_PROVIDER_MODULE
|| bestAvailableVfsMode() == Vfs::Off
#endif
return ENFORCE_VIRTUAL_FILES_SYNC_FOLDER && vfsMode != OCC::Vfs::Off;
}
+bool Theme::disableVirtualFilesSyncFolder() const
+{
+ return DISABLE_VIRTUAL_FILES_SYNC_FOLDER;
+}
+
QColor Theme::defaultColor()
{
return QColor{NEXTCLOUD_BACKGROUND_COLOR};
[[nodiscard]] bool showVirtualFilesOption() const;
[[nodiscard]] bool enforceVirtualFilesSyncFolder() const;
+ [[nodiscard]] bool disableVirtualFilesSyncFolder() const;
static QColor defaultColor();